

/* this ALWAYS GENERATED file contains the definitions for the interfaces */


 /* File created by MIDL compiler version 6.00.0361 */
/* Compiler settings for shimgvw.idl:
    Oicf, W1, Zp8, env=Win32 (32b run)
    protocol : dce , ms_ext, c_ext, robust
    error checks: allocation ref bounds_check enum stub_data 
    VC __declspec() decoration level: 
         __declspec(uuid()), __declspec(selectany), __declspec(novtable)
         DECLSPEC_UUID(), MIDL_INTERFACE()
*/
//@@MIDL_FILE_HEADING(  )

#pragma warning( disable: 4049 )  /* more than 64k source lines */


/* verify that the <rpcndr.h> version is high enough to compile this file*/
#ifndef __REQUIRED_RPCNDR_H_VERSION__
#define __REQUIRED_RPCNDR_H_VERSION__ 475
#endif

#include "rpc.h"
#include "rpcndr.h"

#ifndef __RPCNDR_H_VERSION__
#error this stub requires an updated version of <rpcndr.h>
#endif // __RPCNDR_H_VERSION__


#ifndef __shimgvw_h__
#define __shimgvw_h__

#if defined(_MSC_VER) && (_MSC_VER >= 1020)
#pragma once
#endif

/* Forward Declarations */ 

#ifndef __IPreview_FWD_DEFINED__
#define __IPreview_FWD_DEFINED__
typedef interface IPreview IPreview;
#endif 	/* __IPreview_FWD_DEFINED__ */


#ifndef __IPreview2_FWD_DEFINED__
#define __IPreview2_FWD_DEFINED__
typedef interface IPreview2 IPreview2;
#endif 	/* __IPreview2_FWD_DEFINED__ */


#ifndef __IPreview3_FWD_DEFINED__
#define __IPreview3_FWD_DEFINED__
typedef interface IPreview3 IPreview3;
#endif 	/* __IPreview3_FWD_DEFINED__ */


#ifndef __IImgCmdTarget_FWD_DEFINED__
#define __IImgCmdTarget_FWD_DEFINED__
typedef interface IImgCmdTarget IImgCmdTarget;
#endif 	/* __IImgCmdTarget_FWD_DEFINED__ */


#ifndef __DPreviewEvents_FWD_DEFINED__
#define __DPreviewEvents_FWD_DEFINED__
typedef interface DPreviewEvents DPreviewEvents;
#endif 	/* __DPreviewEvents_FWD_DEFINED__ */


#ifndef __Preview_FWD_DEFINED__
#define __Preview_FWD_DEFINED__

#ifdef __cplusplus
typedef class Preview Preview;
#else
typedef struct Preview Preview;
#endif /* __cplusplus */

#endif 	/* __Preview_FWD_DEFINED__ */


/* header files for imported files */
#include "oaidl.h"
#include "ocidl.h"

#ifdef __cplusplus
extern "C"{
#endif 

void * __RPC_USER MIDL_user_allocate(size_t);
void __RPC_USER MIDL_user_free( void * ); 

/* interface __MIDL_itf_shimgvw_0000 */
/* [local] */ 

// These bits define which toolbar buttons to show
#define PVTB_TOOLBAR             0x00000001
#define PVTB_HIDEFULLSCREEN      0x00000002
#define PVTB_HIDEPRINTBTN        0x00000004
#define PVTB_CONTEXTMENU         0x00000008
#define PVTB_ALLOWONLINE         0x00000010
#define PVTB_DISABLEEDIT         0x00000020


extern RPC_IF_HANDLE __MIDL_itf_shimgvw_0000_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_shimgvw_0000_v0_0_s_ifspec;


#ifndef __PREVIEWLib_LIBRARY_DEFINED__
#define __PREVIEWLib_LIBRARY_DEFINED__

/* library PREVIEWLib */
/* [helpstring][version][uuid] */ 


EXTERN_C const IID LIBID_PREVIEWLib;

#ifndef __IPreview_INTERFACE_DEFINED__
#define __IPreview_INTERFACE_DEFINED__

/* interface IPreview */
/* [unique][helpstring][dual][uuid][object] */ 


EXTERN_C const IID IID_IPreview;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("50F16B25-467E-11D1-8271-00C04FC3183B")
    IPreview : public IDispatch
    {
    public:
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ShowFile( 
            BSTR bstrFileName,
            int iSelectCount) = 0;
        
        virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_printable( 
            /* [retval][out] */ BOOL *pVal) = 0;
        
        virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_printable( 
            /* [in] */ BOOL newVal) = 0;
        
        virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_cxImage( 
            /* [retval][out] */ long *pVal) = 0;
        
        virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_cyImage( 
            /* [retval][out] */ long *pVal) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE Show( 
            VARIANT var) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IPreviewVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IPreview * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IPreview * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IPreview * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IPreview * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IPreview * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IPreview * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IPreview * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *ShowFile )( 
            IPreview * This,
            BSTR bstrFileName,
            int iSelectCount);
        
        /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_printable )( 
            IPreview * This,
            /* [retval][out] */ BOOL *pVal);
        
        /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_printable )( 
            IPreview * This,
            /* [in] */ BOOL newVal);
        
        /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_cxImage )( 
            IPreview * This,
            /* [retval][out] */ long *pVal);
        
        /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_cyImage )( 
            IPreview * This,
            /* [retval][out] */ long *pVal);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Show )( 
            IPreview * This,
            VARIANT var);
        
        END_INTERFACE
    } IPreviewVtbl;

    interface IPreview
    {
        CONST_VTBL struct IPreviewVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IPreview_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IPreview_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IPreview_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IPreview_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IPreview_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IPreview_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IPreview_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IPreview_ShowFile(This,bstrFileName,iSelectCount)	\
    (This)->lpVtbl -> ShowFile(This,bstrFileName,iSelectCount)

#define IPreview_get_printable(This,pVal)	\
    (This)->lpVtbl -> get_printable(This,pVal)

#define IPreview_put_printable(This,newVal)	\
    (This)->lpVtbl -> put_printable(This,newVal)

#define IPreview_get_cxImage(This,pVal)	\
    (This)->lpVtbl -> get_cxImage(This,pVal)

#define IPreview_get_cyImage(This,pVal)	\
    (This)->lpVtbl -> get_cyImage(This,pVal)

#define IPreview_Show(This,var)	\
    (This)->lpVtbl -> Show(This,var)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IPreview_ShowFile_Proxy( 
    IPreview * This,
    BSTR bstrFileName,
    int iSelectCount);


void __RPC_STUB IPreview_ShowFile_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPreview_get_printable_Proxy( 
    IPreview * This,
    /* [retval][out] */ BOOL *pVal);


void __RPC_STUB IPreview_get_printable_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPreview_put_printable_Proxy( 
    IPreview * This,
    /* [in] */ BOOL newVal);


void __RPC_STUB IPreview_put_printable_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPreview_get_cxImage_Proxy( 
    IPreview * This,
    /* [retval][out] */ long *pVal);


void __RPC_STUB IPreview_get_cxImage_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPreview_get_cyImage_Proxy( 
    IPreview * This,
    /* [retval][out] */ long *pVal);


void __RPC_STUB IPreview_get_cyImage_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IPreview_Show_Proxy( 
    IPreview * This,
    VARIANT var);


void __RPC_STUB IPreview_Show_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IPreview_INTERFACE_DEFINED__ */


#ifndef __IPreview2_INTERFACE_DEFINED__
#define __IPreview2_INTERFACE_DEFINED__

/* interface IPreview2 */
/* [unique][helpstring][dual][uuid][object] */ 


EXTERN_C const IID IID_IPreview2;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("0AE0A2B1-3A34-11D3-9626-00C04F8EEC8C")
    IPreview2 : public IPreview
    {
    public:
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE Zoom( 
            /* [in] */ int iSelectCount) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE BestFit( void) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE ActualSize( void) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE SlideShow( void) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IPreview2Vtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IPreview2 * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IPreview2 * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IPreview2 * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IPreview2 * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IPreview2 * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IPreview2 * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IPreview2 * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *ShowFile )( 
            IPreview2 * This,
            BSTR bstrFileName,
            int iSelectCount);
        
        /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_printable )( 
            IPreview2 * This,
            /* [retval][out] */ BOOL *pVal);
        
        /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_printable )( 
            IPreview2 * This,
            /* [in] */ BOOL newVal);
        
        /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_cxImage )( 
            IPreview2 * This,
            /* [retval][out] */ long *pVal);
        
        /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_cyImage )( 
            IPreview2 * This,
            /* [retval][out] */ long *pVal);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Show )( 
            IPreview2 * This,
            VARIANT var);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *Zoom )( 
            IPreview2 * This,
            /* [in] */ int iSelectCount);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *BestFit )( 
            IPreview2 * This);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *ActualSize )( 
            IPreview2 * This);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *SlideShow )( 
            IPreview2 * This);
        
        END_INTERFACE
    } IPreview2Vtbl;

    interface IPreview2
    {
        CONST_VTBL struct IPreview2Vtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IPreview2_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IPreview2_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IPreview2_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IPreview2_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IPreview2_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IPreview2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IPreview2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IPreview2_ShowFile(This,bstrFileName,iSelectCount)	\
    (This)->lpVtbl -> ShowFile(This,bstrFileName,iSelectCount)

#define IPreview2_get_printable(This,pVal)	\
    (This)->lpVtbl -> get_printable(This,pVal)

#define IPreview2_put_printable(This,newVal)	\
    (This)->lpVtbl -> put_printable(This,newVal)

#define IPreview2_get_cxImage(This,pVal)	\
    (This)->lpVtbl -> get_cxImage(This,pVal)

#define IPreview2_get_cyImage(This,pVal)	\
    (This)->lpVtbl -> get_cyImage(This,pVal)

#define IPreview2_Show(This,var)	\
    (This)->lpVtbl -> Show(This,var)


#define IPreview2_Zoom(This,iSelectCount)	\
    (This)->lpVtbl -> Zoom(This,iSelectCount)

#define IPreview2_BestFit(This)	\
    (This)->lpVtbl -> BestFit(This)

#define IPreview2_ActualSize(This)	\
    (This)->lpVtbl -> ActualSize(This)

#define IPreview2_SlideShow(This)	\
    (This)->lpVtbl -> SlideShow(This)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpstring] */ HRESULT STDMETHODCALLTYPE IPreview2_Zoom_Proxy( 
    IPreview2 * This,
    /* [in] */ int iSelectCount);


void __RPC_STUB IPreview2_Zoom_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IPreview2_BestFit_Proxy( 
    IPreview2 * This);


void __RPC_STUB IPreview2_BestFit_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IPreview2_ActualSize_Proxy( 
    IPreview2 * This);


void __RPC_STUB IPreview2_ActualSize_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IPreview2_SlideShow_Proxy( 
    IPreview2 * This);


void __RPC_STUB IPreview2_SlideShow_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IPreview2_INTERFACE_DEFINED__ */


#ifndef __IPreview3_INTERFACE_DEFINED__
#define __IPreview3_INTERFACE_DEFINED__

/* interface IPreview3 */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IPreview3;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("497431ad-5481-4df7-ae5d-130d9cd50db3")
    IPreview3 : public IUnknown
    {
    public:
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE ShowFile( 
            BSTR bstrFileName) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE Show( 
            VARIANT var) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE Zoom( 
            /* [in] */ int iSelectCount) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE BestFit( void) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE ActualSize( void) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE SlideShow( void) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE Rotate( 
            /* [in] */ DWORD dwAngle) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE SetWallpaper( 
            /* [in] */ BSTR bstrPath) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE SaveAs( 
            /* [in] */ BSTR bstrPath) = 0;
        
        virtual /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_cxImage( 
            /* [retval][out] */ long *pVal) = 0;
        
        virtual /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_cyImage( 
            /* [retval][out] */ long *pVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IPreview3Vtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IPreview3 * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IPreview3 * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IPreview3 * This);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *ShowFile )( 
            IPreview3 * This,
            BSTR bstrFileName);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *Show )( 
            IPreview3 * This,
            VARIANT var);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *Zoom )( 
            IPreview3 * This,
            /* [in] */ int iSelectCount);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *BestFit )( 
            IPreview3 * This);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *ActualSize )( 
            IPreview3 * This);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *SlideShow )( 
            IPreview3 * This);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *Rotate )( 
            IPreview3 * This,
            /* [in] */ DWORD dwAngle);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *SetWallpaper )( 
            IPreview3 * This,
            /* [in] */ BSTR bstrPath);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *SaveAs )( 
            IPreview3 * This,
            /* [in] */ BSTR bstrPath);
        
        /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_cxImage )( 
            IPreview3 * This,
            /* [retval][out] */ long *pVal);
        
        /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_cyImage )( 
            IPreview3 * This,
            /* [retval][out] */ long *pVal);
        
        END_INTERFACE
    } IPreview3Vtbl;

    interface IPreview3
    {
        CONST_VTBL struct IPreview3Vtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IPreview3_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IPreview3_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IPreview3_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IPreview3_ShowFile(This,bstrFileName)	\
    (This)->lpVtbl -> ShowFile(This,bstrFileName)

#define IPreview3_Show(This,var)	\
    (This)->lpVtbl -> Show(This,var)

#define IPreview3_Zoom(This,iSelectCount)	\
    (This)->lpVtbl -> Zoom(This,iSelectCount)

#define IPreview3_BestFit(This)	\
    (This)->lpVtbl -> BestFit(This)

#define IPreview3_ActualSize(This)	\
    (This)->lpVtbl -> ActualSize(This)

#define IPreview3_SlideShow(This)	\
    (This)->lpVtbl -> SlideShow(This)

#define IPreview3_Rotate(This,dwAngle)	\
    (This)->lpVtbl -> Rotate(This,dwAngle)

#define IPreview3_SetWallpaper(This,bstrPath)	\
    (This)->lpVtbl -> SetWallpaper(This,bstrPath)

#define IPreview3_SaveAs(This,bstrPath)	\
    (This)->lpVtbl -> SaveAs(This,bstrPath)

#define IPreview3_get_cxImage(This,pVal)	\
    (This)->lpVtbl -> get_cxImage(This,pVal)

#define IPreview3_get_cyImage(This,pVal)	\
    (This)->lpVtbl -> get_cyImage(This,pVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpstring] */ HRESULT STDMETHODCALLTYPE IPreview3_ShowFile_Proxy( 
    IPreview3 * This,
    BSTR bstrFileName);


void __RPC_STUB IPreview3_ShowFile_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IPreview3_Show_Proxy( 
    IPreview3 * This,
    VARIANT var);


void __RPC_STUB IPreview3_Show_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IPreview3_Zoom_Proxy( 
    IPreview3 * This,
    /* [in] */ int iSelectCount);


void __RPC_STUB IPreview3_Zoom_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IPreview3_BestFit_Proxy( 
    IPreview3 * This);


void __RPC_STUB IPreview3_BestFit_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IPreview3_ActualSize_Proxy( 
    IPreview3 * This);


void __RPC_STUB IPreview3_ActualSize_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IPreview3_SlideShow_Proxy( 
    IPreview3 * This);


void __RPC_STUB IPreview3_SlideShow_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IPreview3_Rotate_Proxy( 
    IPreview3 * This,
    /* [in] */ DWORD dwAngle);


void __RPC_STUB IPreview3_Rotate_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IPreview3_SetWallpaper_Proxy( 
    IPreview3 * This,
    /* [in] */ BSTR bstrPath);


void __RPC_STUB IPreview3_SetWallpaper_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IPreview3_SaveAs_Proxy( 
    IPreview3 * This,
    /* [in] */ BSTR bstrPath);


void __RPC_STUB IPreview3_SaveAs_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE IPreview3_get_cxImage_Proxy( 
    IPreview3 * This,
    /* [retval][out] */ long *pVal);


void __RPC_STUB IPreview3_get_cxImage_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE IPreview3_get_cyImage_Proxy( 
    IPreview3 * This,
    /* [retval][out] */ long *pVal);


void __RPC_STUB IPreview3_get_cyImage_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IPreview3_INTERFACE_DEFINED__ */


#ifndef __IImgCmdTarget_INTERFACE_DEFINED__
#define __IImgCmdTarget_INTERFACE_DEFINED__

/* interface IImgCmdTarget */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IImgCmdTarget;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("FF36E952-72E9-4EA0-92FB-B63FE5037D78")
    IImgCmdTarget : public IUnknown
    {
    public:
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE GetMode( 
            DWORD *pdw) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE GetPageFlags( 
            DWORD *pdw) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE ZoomIn( void) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE ZoomOut( void) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE ActualSize( void) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE BestFit( void) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE Rotate( 
            /* [in] */ DWORD dwAngle) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE NextPage( void) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE PreviousPage( void) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IImgCmdTargetVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IImgCmdTarget * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IImgCmdTarget * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IImgCmdTarget * This);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *GetMode )( 
            IImgCmdTarget * This,
            DWORD *pdw);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *GetPageFlags )( 
            IImgCmdTarget * This,
            DWORD *pdw);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *ZoomIn )( 
            IImgCmdTarget * This);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *ZoomOut )( 
            IImgCmdTarget * This);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *ActualSize )( 
            IImgCmdTarget * This);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *BestFit )( 
            IImgCmdTarget * This);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *Rotate )( 
            IImgCmdTarget * This,
            /* [in] */ DWORD dwAngle);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *NextPage )( 
            IImgCmdTarget * This);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *PreviousPage )( 
            IImgCmdTarget * This);
        
        END_INTERFACE
    } IImgCmdTargetVtbl;

    interface IImgCmdTarget
    {
        CONST_VTBL struct IImgCmdTargetVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IImgCmdTarget_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IImgCmdTarget_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IImgCmdTarget_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IImgCmdTarget_GetMode(This,pdw)	\
    (This)->lpVtbl -> GetMode(This,pdw)

#define IImgCmdTarget_GetPageFlags(This,pdw)	\
    (This)->lpVtbl -> GetPageFlags(This,pdw)

#define IImgCmdTarget_ZoomIn(This)	\
    (This)->lpVtbl -> ZoomIn(This)

#define IImgCmdTarget_ZoomOut(This)	\
    (This)->lpVtbl -> ZoomOut(This)

#define IImgCmdTarget_ActualSize(This)	\
    (This)->lpVtbl -> ActualSize(This)

#define IImgCmdTarget_BestFit(This)	\
    (This)->lpVtbl -> BestFit(This)

#define IImgCmdTarget_Rotate(This,dwAngle)	\
    (This)->lpVtbl -> Rotate(This,dwAngle)

#define IImgCmdTarget_NextPage(This)	\
    (This)->lpVtbl -> NextPage(This)

#define IImgCmdTarget_PreviousPage(This)	\
    (This)->lpVtbl -> PreviousPage(This)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpstring] */ HRESULT STDMETHODCALLTYPE IImgCmdTarget_GetMode_Proxy( 
    IImgCmdTarget * This,
    DWORD *pdw);


void __RPC_STUB IImgCmdTarget_GetMode_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IImgCmdTarget_GetPageFlags_Proxy( 
    IImgCmdTarget * This,
    DWORD *pdw);


void __RPC_STUB IImgCmdTarget_GetPageFlags_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IImgCmdTarget_ZoomIn_Proxy( 
    IImgCmdTarget * This);


void __RPC_STUB IImgCmdTarget_ZoomIn_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IImgCmdTarget_ZoomOut_Proxy( 
    IImgCmdTarget * This);


void __RPC_STUB IImgCmdTarget_ZoomOut_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IImgCmdTarget_ActualSize_Proxy( 
    IImgCmdTarget * This);


void __RPC_STUB IImgCmdTarget_ActualSize_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IImgCmdTarget_BestFit_Proxy( 
    IImgCmdTarget * This);


void __RPC_STUB IImgCmdTarget_BestFit_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IImgCmdTarget_Rotate_Proxy( 
    IImgCmdTarget * This,
    /* [in] */ DWORD dwAngle);


void __RPC_STUB IImgCmdTarget_Rotate_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IImgCmdTarget_NextPage_Proxy( 
    IImgCmdTarget * This);


void __RPC_STUB IImgCmdTarget_NextPage_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IImgCmdTarget_PreviousPage_Proxy( 
    IImgCmdTarget * This);


void __RPC_STUB IImgCmdTarget_PreviousPage_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IImgCmdTarget_INTERFACE_DEFINED__ */


#ifndef __DPreviewEvents_DISPINTERFACE_DEFINED__
#define __DPreviewEvents_DISPINTERFACE_DEFINED__

/* dispinterface DPreviewEvents */
/* [helpstring][uuid] */ 


EXTERN_C const IID DIID_DPreviewEvents;

#if defined(__cplusplus) && !defined(CINTERFACE)

    MIDL_INTERFACE("1B490296-50DF-11d1-8B44-00C04FC3183B")
    DPreviewEvents : public IDispatch
    {
    };
    
#else 	/* C style interface */

    typedef struct DPreviewEventsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            DPreviewEvents * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            DPreviewEvents * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            DPreviewEvents * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            DPreviewEvents * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            DPreviewEvents * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            DPreviewEvents * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            DPreviewEvents * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        END_INTERFACE
    } DPreviewEventsVtbl;

    interface DPreviewEvents
    {
        CONST_VTBL struct DPreviewEventsVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define DPreviewEvents_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define DPreviewEvents_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define DPreviewEvents_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define DPreviewEvents_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define DPreviewEvents_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define DPreviewEvents_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define DPreviewEvents_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)

#endif /* COBJMACROS */


#endif 	/* C style interface */


#endif 	/* __DPreviewEvents_DISPINTERFACE_DEFINED__ */


EXTERN_C const CLSID CLSID_Preview;

#ifdef __cplusplus

class DECLSPEC_UUID("50F16B26-467E-11D1-8271-00C04FC3183B")
Preview;
#endif
#endif /* __PREVIEWLib_LIBRARY_DEFINED__ */

/* interface __MIDL_itf_shimgvw_0262 */
/* [local] */ 

#define SID_SImageView IID_IImgCmdTarget


extern RPC_IF_HANDLE __MIDL_itf_shimgvw_0262_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_shimgvw_0262_v0_0_s_ifspec;

/* Additional Prototypes for ALL interfaces */

/* end of Additional Prototypes */

#ifdef __cplusplus
}
#endif

#endif


